package com.xmtlxx.tms.domain.vo;

import com.xmtlxx.common.annotation.ExcelDictFormat;
import com.xmtlxx.common.convert.ExcelDictConvert;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;



/**
 * 司机视图对象 t_driver
 *
 * @author xmtlxx
 * @date 2022-08-15
 */
@Data
@ApiModel("司机视图对象")
@ExcelIgnoreUnannotated
public class DriverVo {

    private static final long serialVersionUID = 1L;

    /**
     * 司机ID
     */
    @ExcelProperty(value = "司机ID")
    @ApiModelProperty("司机ID")
    private String id;

    /**
     * 承运商ID
     */
    @ExcelProperty(value = "承运商ID")
    @ApiModelProperty("承运商ID")
    private String carrierId;

    /**
     * 用户ID
     */
    @ExcelProperty(value = "用户ID")
    @ApiModelProperty("用户ID")
    private Long userId;

    /**
     * 姓名
     */
    @ExcelProperty(value = "姓名")
    @ApiModelProperty("姓名")
    private String personName;

    /**
     * 性别
     */
    @ExcelProperty(value = "性别")
    @ApiModelProperty("性别")
    private String sex;

    /**
     * 准驾车型
     */
    @ExcelProperty(value = "准驾车型", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "tms_vehicle_class")
    @ApiModelProperty("准驾车型")
    private String vehicleClass;

    /**
     * 驾驶证号
     */
    @ExcelProperty(value = "驾驶证号")
    @ApiModelProperty("驾驶证号")
    private String driverCode;

    /**
     * 档案编号
     */
    @ExcelProperty(value = "档案编号")
    @ApiModelProperty("档案编号")
    private String fileNo;

    /**
     * 初次领证日期
     */
    @ExcelProperty(value = "初次领证日期")
    @ApiModelProperty("初次领证日期")
    private Date receiveDateFirst;

    /**
     * 发证机关
     */
    @ExcelProperty(value = "发证机关")
    @ApiModelProperty("发证机关")
    private String issuingOrganizations;

    /**
     * 驾照有效期起
     */
    @ExcelProperty(value = "驾照有效期起")
    @ApiModelProperty("驾照有效期起")
    private Date validPeriodFrom;

    /**
     * 驾照有效期止
     */
    @ExcelProperty(value = "驾照有效期止")
    @ApiModelProperty("驾照有效期止")
    private Date validPeriodTo;

    /**
     * 驾驶证图片
     */
    @ExcelProperty(value = "驾驶证图片")
    @ApiModelProperty("驾驶证图片")
    private String driverImg;

    /**
     * 驾驶证副页图片
     */
    @ExcelProperty(value = "驾驶证副页图片")
    @ApiModelProperty("驾驶证副页图片")
    private String driverSecondImg;

    /**
     * 备注
     */
    @ExcelProperty(value = "备注")
    @ApiModelProperty("备注")
    private String remark;

    /**
     * 删除标识
     */
    @ExcelProperty(value = "删除标识", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_del_flag")
    @ApiModelProperty("删除标识")
    private String delFlag;

    private String userName;
    private String password;
    private String carrierName;

    private String phonenumber;

    /**
     * 是否展示承运商筛选
     */
    private Boolean isShow;

}
